﻿using PropertyManagment.entity;
using PropertyManagment.entity.dto;
using PropertyManagment.mapper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace PropertyManagment.service {
    public interface IService<T> where T : BaseEntity {

        //BaseMapper<T> getBaseMapper();

        public List<T> getAll();
        public T getById(long id);
        public List<T> listByIds(ICollection<long> idList);
        public T add(T data);
        public List<T> addList(ICollection<T> dataList);
        public T delete(long id);
        public List<T> deleteList(ICollection<T> dataList);
        public List<T> deleteByIds(ICollection<long> idList);
        public T update(T updateData);
        public Page<T> page(Page<T> page);
        public Page<T> page(Page<T> page, ICollection<T> list);
    }
}
